'''
如果要复制的图片文件很大，一次将文件内容直接读入内存中可能会造成非常大的内存开销，
为了减少对内存的占用，可以为read方法传入size参数来指定每次读取的字节数，
通过循环读取和写入的方式来完成上面的操作，代码如下所示。
'''
'''
'r'	读取 （默认）
'w'	写入（会先截断之前的内容）
'x'	写入，如果文件已经存在会产生异常
'a'	追加，将内容写入到已有文件的末尾
'b'	二进制模式
't'	文本模式（默认）
'+'	更新（既可以读又可以写）
'''
try:
    with open('resources/1.jpg', 'rb') as file1, open('resources/2.jpg', 'wb') as file2:
        data = file1.read(512)
        while data:
            print("11")
            file2.write(data)
            data = file1.read(512)
except FileNotFoundError:
    print('指定的文件无法打开.')
except IOError:
    print('读写文件时出现错误.')
print('程序执行结束.')